package com.scau402.system.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.scau402.common.annotation.Excel;
import com.scau402.common.core.domain.BaseEntity;

/**
 * 翡翠库存对象 wms_inventory
 * 
 * @author ruoyi
 * @date 2023-06-26
 */
public class WmsInventory extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 入库类型 */
    @Excel(name = "入库类型")
    private String orderType;

    /** 入库单编号 */
    @Excel(name = "入库单编号")
    private String orderCode;

    /** 订单批次 */
    @Excel(name = "订单批次")
    private String orderBatch;

    /** 订单日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "订单日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date orderDate;

    /** 有效期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "有效期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date validDate;

    /** 供应商主键ID */
    @Excel(name = "供应商主键ID")
    private Long supplierId;

    /** 入库仓库主键ID */
    @Excel(name = "入库仓库主键ID")
    private Long warehouseId;

    /** 对象仓库主键ID */
    @Excel(name = "对象仓库主键ID")
    private Long desWarehouseId;

    /** 加工厂主键ID */
    @Excel(name = "加工厂主键ID")
    private Long processorId;

    /** 关联出库单主键 */
    @Excel(name = "关联出库单主键")
    private Long outboundOrderId;

    /** 条形码 */
    @Excel(name = "条形码")
    private String barcode;

    /** 翡翠品类id */
    @Excel(name = "翡翠品类id")
    private Long jadeCategoryId;

    /** 翡翠数量 */
    @Excel(name = "翡翠数量")
    private Long jadeQuantityTotal;

    /** 翡翠成本价格 */
    @Excel(name = "翡翠成本价格")
    private BigDecimal jadeCostTotal;

    /** 翡翠标签价格 */
    @Excel(name = "翡翠标签价格")
    private BigDecimal jadeTagPriceTotal;

    /** 翡翠销售价格 */
    @Excel(name = "翡翠销售价格")
    private BigDecimal jadeSellingPriceTotal;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    /** 状态(0在库、1待到库、2已出库、3已合并) */
    @Excel(name = "状态(0在库、1待到库、2已出库、3已合并)")
    private String status;

    /** 租户ID */
    @Excel(name = "租户ID")
    private Long tenantId;

    /** 部门ID */
    @Excel(name = "部门ID")
    private Long deptId;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setOrderType(String orderType) 
    {
        this.orderType = orderType;
    }

    public String getOrderType() 
    {
        return orderType;
    }
    public void setOrderCode(String orderCode) 
    {
        this.orderCode = orderCode;
    }

    public String getOrderCode() 
    {
        return orderCode;
    }
    public void setOrderBatch(String orderBatch) 
    {
        this.orderBatch = orderBatch;
    }

    public String getOrderBatch() 
    {
        return orderBatch;
    }
    public void setOrderDate(Date orderDate) 
    {
        this.orderDate = orderDate;
    }

    public Date getOrderDate() 
    {
        return orderDate;
    }
    public void setValidDate(Date validDate) 
    {
        this.validDate = validDate;
    }

    public Date getValidDate() 
    {
        return validDate;
    }
    public void setSupplierId(Long supplierId) 
    {
        this.supplierId = supplierId;
    }

    public Long getSupplierId() 
    {
        return supplierId;
    }
    public void setWarehouseId(Long warehouseId) 
    {
        this.warehouseId = warehouseId;
    }

    public Long getWarehouseId() 
    {
        return warehouseId;
    }
    public void setDesWarehouseId(Long desWarehouseId) 
    {
        this.desWarehouseId = desWarehouseId;
    }

    public Long getDesWarehouseId() 
    {
        return desWarehouseId;
    }
    public void setProcessorId(Long processorId) 
    {
        this.processorId = processorId;
    }

    public Long getProcessorId() 
    {
        return processorId;
    }
    public void setOutboundOrderId(Long outboundOrderId) 
    {
        this.outboundOrderId = outboundOrderId;
    }

    public Long getOutboundOrderId() 
    {
        return outboundOrderId;
    }
    public void setBarcode(String barcode) 
    {
        this.barcode = barcode;
    }

    public String getBarcode() 
    {
        return barcode;
    }
    public void setJadeCategoryId(Long jadeCategoryId) 
    {
        this.jadeCategoryId = jadeCategoryId;
    }

    public Long getJadeCategoryId() 
    {
        return jadeCategoryId;
    }
    public void setJadeQuantityTotal(Long jadeQuantityTotal) 
    {
        this.jadeQuantityTotal = jadeQuantityTotal;
    }

    public Long getJadeQuantityTotal() 
    {
        return jadeQuantityTotal;
    }
    public void setJadeCostTotal(BigDecimal jadeCostTotal) 
    {
        this.jadeCostTotal = jadeCostTotal;
    }

    public BigDecimal getJadeCostTotal() 
    {
        return jadeCostTotal;
    }
    public void setJadeTagPriceTotal(BigDecimal jadeTagPriceTotal) 
    {
        this.jadeTagPriceTotal = jadeTagPriceTotal;
    }

    public BigDecimal getJadeTagPriceTotal() 
    {
        return jadeTagPriceTotal;
    }
    public void setJadeSellingPriceTotal(BigDecimal jadeSellingPriceTotal) 
    {
        this.jadeSellingPriceTotal = jadeSellingPriceTotal;
    }

    public BigDecimal getJadeSellingPriceTotal() 
    {
        return jadeSellingPriceTotal;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setTenantId(Long tenantId) 
    {
        this.tenantId = tenantId;
    }

    public Long getTenantId() 
    {
        return tenantId;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("orderType", getOrderType())
            .append("orderCode", getOrderCode())
            .append("orderBatch", getOrderBatch())
            .append("orderDate", getOrderDate())
            .append("validDate", getValidDate())
            .append("supplierId", getSupplierId())
            .append("warehouseId", getWarehouseId())
            .append("desWarehouseId", getDesWarehouseId())
            .append("processorId", getProcessorId())
            .append("outboundOrderId", getOutboundOrderId())
            .append("barcode", getBarcode())
            .append("jadeCategoryId", getJadeCategoryId())
            .append("jadeQuantityTotal", getJadeQuantityTotal())
            .append("jadeCostTotal", getJadeCostTotal())
            .append("jadeTagPriceTotal", getJadeTagPriceTotal())
            .append("jadeSellingPriceTotal", getJadeSellingPriceTotal())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("delFlag", getDelFlag())
            .append("status", getStatus())
            .append("remark", getRemark())
            .append("tenantId", getTenantId())
            .append("deptId", getDeptId())
            .toString();
    }
}
